#include "Log.hpp"
#include "ThreadPool.hpp"
#include <memory>
using namespace LogModule;
using namespace ThreadPoolModule;

int main()
{
    // Enable_File_Log_Strategy();

    ThreadPool<int>* tp = new ThreadPool<int>();

    tp->Start();

    sleep(100);

    // Enable_File_Log_Strategy();
    // LOG(LogLevel::DEBUG) << "hello mihayou" << 666;
    // LOG(LogLevel::DEBUG) << "hello mihayou" << 666;

    // Enable_Console_Log_Strategy();
    // LOG(LogLevel::DEBUG) << "hello mihayou" << 666;
    // LOG(LogLevel::DEBUG) << "hello mihayou" << 666;
    
    // std::unique_ptr<LogStrategy> strategy = std::make_unique<ConsoleLogStrategy>();//C++14
    // std::unique_ptr<LogStrategy> strategy = std::make_unique<FileLogStrategy>();

    // strategy->SyncLog("hello mihayou!");

    // logger(LogLevel::DEBUG, "main.cc", 10) << "hello mihayou!" << " 666" << " 14";
    // logger(LogLevel::DEBUG, "main.cc", 10) << "hello mihayou!";
    // logger(LogLevel::DEBUG, "main.cc", 10) << "hello mihayou!";
    // logger(LogLevel::DEBUG, "main.cc", 10) << "hello mihayou!";
    // logger(LogLevel::DEBUG, "main.cc", 10) << "hello mihayou!";

    return 0;
}